
This example shows a more advanced demo project for a control of a traffic light
================================================================================


The state machine enters in a state where it waits for a rising edge on the input signal called CROSS. 
When this happens, the pedestrian triggered request gets logged with the REQUEST output, which is used for internal purposes only. 

After a small delay when the turn_yellow_on match happens, the traffic light is changed to yellow. In the yellow_on_state, 
when the turn_red_on match happens, the SCT will jump into the red_on_state, since this transaction is the only one which is 
conditioned to the REQUEST signal being high (which the SCT has already set at the beginning).

In the red_on_state, when the pedestrian_walk && REQUEST match happens the pedestrian green light (WALK) will be turned on, 
then turned off when pedestrian_stop match value has elapsed, returning to the red_on_state.

Then the sequence for the traffic lights is repeated in the opposite sense (turn to yellow, then back to green).

Since the pedestrian_stop event has cleared the REQUEST signal, the state machine will take the turn_red_off && ! REQUEST, 
turn_yellow_off && !REQUEST path when rolling back.

The lights are driven by a series of different match values which control the phases for the switching in an independent way.
